(1) Field of the Invention
This invention relates to an information processing apparatus and, more particularly, to an information processing apparatus for performing a process for searching for a file stored in a memory.
(2) Description of the Related Art
The inverted index system is known as a method for searching text at high speed. In this method, words included in a document to be searched are extracted, data structure (inverted index) in which a document including a word can be looked up easily on the basis of the word is created (indexing) in advance, and a result (document including a particular word) is searched for at high speed by using that data structure at search time.
By the way, the rights of access (access rights) may be created for a document in order to permit a particular user alone to use it. If a document for which such access rights are created is searched for, only documents for which a user who made a request has access rights need to be displayed as search results. Otherwise he/she will see the number of documents for which he/she does not have access rights, which is not desirable from the viewpoint of security.
FIG. 43 is a view showing an example of an information processing apparatus for searching for a document for which such access rights are created.
As shown in FIG. 43, an information processing apparatus 1 comprises an indexer 1a, an index storing section 1b, a text searching engine 1c, and an access right filter 1d and searches a group of documents stored in a document store 2 for a document including a query input.
The indexer 1a generates an index by extracting necessary information from documents stored in the document store 2 in compliance with indexing conditions input and stores it in the index storing section 1b. 
The index storing section 1b stores an index generated by the indexer 1a. 
The text searching engine 1c searches the index storing section 1b for an index including a keyword supplied from a user.
The access right filter 1d specifies the original document in the document store 2 corresponding to an index searched for by the text searching engine 1c and obtains its access right information. The access right filter 1d selects only documents for which a user who searched has access rights and outputs them as search results.
The operation of the above example will now be described.
The indexer 1a searches documents stored in the document store 2 in a predetermined cycle and generates an index in compliance with indexing conditions, which are information for specifying the type of information obtained from documents and a method for obtaining it.
The indexer 1a obtains the title and body of each of documents stored in the document store 2 in compliance with these conditions and generates an index. As a result, an index corresponding to each of documents stored in the document store 2 will be stored in the index storing section 1b. 
In this state of things, it is assumed that a user supplies keyword “(Title=Proposal)&(Body=Internet)” to the text searching engine 1c. The text searching engine 1c searches the index storing section 1b for an index which includes the input keyword in each of its title and body, and supplies the search result to the access right filter 1d. 
The access right filter 1d inputs user information (user ID, for example) necessary for specifying a user. Then the access right filter 1d specifies the original document in the document store 2 corresponding to an index given as the search result and checks by comparing its right information and the user information whether or not the user has access rights for the document. If the user has access rights, then the access right filter 1d outputs the title of the document as the search result.
The above processes will enable to refer to right information given to each document and to output only information for which a user has access rights as search results.
By the way, a striking feature of a full text search with an inverted index described above is great speed. However, in a filtering system in which an inquiry about access rights is made for each of documents included in a list obtained as a search result, filtering will take time, which makes great speed in search meaningless.
In addition, a full text search with an inverted index outputs “the number of hits,” being the number of documents which meet a condition imposed by a search query, as search results. The conventional method described above, however, cannot calculate the number of really valid hits (based on access rights) before a filtering process. Therefore, when the number of hits before a filtering process reaches hundreds of thousands or millions, a filtering process takes a very long time. As a result, it takes much time to display the number of hits.